//package com.mpspboot.controller;
//
//
//import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
//import com.mpspboot.entity.User;
//import com.mpspboot.service.IRoleService;
//import com.mpspboot.service.IUserService;
//import com.mpspboot.util.PageInfo;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.security.access.prepost.PreAuthorize;
//import org.springframework.ui.Model;
//import org.springframework.web.bind.annotation.*;
//
//import org.springframework.stereotype.Controller;
//import org.springframework.web.multipart.MultipartFile;
//
//import javax.servlet.http.HttpSession;
//import java.io.File;
//import java.io.IOException;
//
///**
// * <p>
// * 前端控制器
// * </p>
// *
// * @author guocb
// * @since 2021-02-20
// */
//@Controller
//@RequestMapping("/user")
//public class UserController {
//
//    @Autowired
//    IUserService userService;
//
//    @Autowired
//    IRoleService roleService;
//
//
//    @PostMapping("login")
//    public String login(String userCode, String userPassword, Model model, HttpSession session){
//        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
//        queryWrapper.eq(User.USERCODE,userCode);
//        queryWrapper.eq(User.USERPASSWORD,userPassword);
//        queryWrapper.eq(User.ISDELETED,0);
//        User user = userService.getOne(queryWrapper);
//        if(user !=null){
//            session.setAttribute("userSession",user);
//            return "frame";
//        }
//        model.addAttribute("error","用户名密码错误");
//        return "index";
//    }
//
//    @GetMapping("list")
//    public String list(@RequestParam(defaultValue = "1", required = false) Long pageIndex,
//                       String queryname,
//                       Long queryUserRole,
//                       Model model) {
//        //查询条件封装
//        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
//        if (queryname != null && queryname != "")
//            queryWrapper.like(User.USERNAME, queryname);
//        if (queryUserRole != null && queryUserRole != 0)
//            queryWrapper.eq(User.USERROLE, queryUserRole);
//        //分页
//        PageInfo<User> pageInfo = new PageInfo<User>(pageIndex, 10);
//        pageInfo = (PageInfo<User>) userService.selectUserPage(pageInfo, queryWrapper);
//        model.addAttribute("pageInfo", pageInfo);
//        model.addAttribute("queryname",queryname);
//        model.addAttribute("queryUserRole",queryUserRole);
//        model.addAttribute("roleList", roleService.list());
//        return "userlist";
//    }
//
//    //跳转到添加用户页面
//    @GetMapping("toadd")
//    public String toAdd(Model model) {
//        //所有的角色
//        model.addAttribute("roleList", roleService.list());
//        return "useradd";
//    }
//
//    @PostMapping("add")
//    public String add(User user,
//                      MultipartFile idPicPathFile,
//                      Model model) {
//        if(idPicPathFile.isEmpty()){
//            model.addAttribute("msg", "请选择证件照");
//            return "useradd";
//        }
//        try {
//            String ext = idPicPathFile.getOriginalFilename().substring(idPicPathFile.getOriginalFilename().lastIndexOf("."));
//            String fileName = System.currentTimeMillis() + ext;
//            idPicPathFile.transferTo(new File("E:\\files\\"+fileName));
//            user.setIdPicPath(fileName);
//        } catch (IOException e) {
//            e.printStackTrace();
//        }
//
//        boolean flag = userService.save(user);
//        if (flag) {
//            return "redirect:list";
//        }
//        model.addAttribute("msg", "添加失败");
//        return "useradd";
//    }
//
//    @GetMapping("get")
//    public String get(Long id, Model model) {
//        User user = userService.getById(id);
//        model.addAttribute("user", user);
//        model.addAttribute("roleList", roleService.list());
//        return "usermodify";
//    }
//
//    @PostMapping("update")
//    public String update(User user, Model model) {
//        //根据id更新对象属性
//        boolean flag = userService.updateById(user);
//        if (flag) {
//            return "redirect:list";
//        }
//        return "redirect:get?id=" + user.getId(); //重定向到查询
//    }
//
//    @ResponseBody
//    @GetMapping("delete")
//    public Boolean delete(Long id) {
//        return userService.removeById(id);
//    }
//}
